// 给定一个整数数组 nums ，找到一个具有最大和的连续子数组（子数组最少包含一个元素），返回其最大和。

// 示例:
// 输入: [-2,1,-3,4,-1,2,1,-5,4],
// 输出: 6
// 解释: 连续子数组 [4,-1,2,1] 的和最大，为 6。

// 进阶:
// 如果你已经实现复杂度为 O(n) 的解法，尝试使用更为精妙的分治法求解。
// 据说是某年清华考研题，看来我注定与清华无缘了，此时此刻我都想不出分治法怎么解
var maxSubArray = function(nums) {
	let sub = nums[0];
	let sum = 0;
    for(let i = 0; i < nums.length; i++){
    	if(sum > 0){
    		sum += nums[i];
    	} else {
    		sum = nums[i];
    	}
    	sub = Math.max(sub, sum);
    }
    return sub;
};
console.log(maxSubArray([-1, -2, -3]));